home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / ctutor.exe / TEXT / CHAP01.TXT next >
Text File  |  1994-05-15  |  11KB  |  232 lines

  1.  
  2.  
  3.  
  4.                                                         Chapter 1
  5.                                                   GETTING STARTED
  6.  
  7. WHAT IS AN IDENTIFIER
  8. -----------------------------------------------------------------
  9. Before you can do anything in any language, you must at least 
  10. know how to name an identifier.  An identifier is used for any 
  11. variable, function, data definition, etc.  In the programming 
  12. language C, an identifier is a combination of alphanumeric 
  13. characters, the first being a letter of the alphabet or an 
  14. underline, and the remaining being any letter of the alphabet, 
  15. any numeric digit, or the underline.  In the case of some 
  16. compilers, a dollar sign is permitted but not as the first 
  17. character of an identifier.  It should be pointed out that even 
  18. though a dollar sign may be permitted by your C compiler, it is 
  19. not used anywhere in this tutorial since it is not in general 
  20. use by C programmers, and is not even allowed by most compilers.  
  21. If you do not plan to write any portable code, you can use it at 
  22. will if you feel it makes your code more readable.
  23.  
  24. Two rules must be kept in mind when naming identifiers.
  25.  
  26. 1.   The case of alphabetic characters is significant.  Using 
  27.      INDEX for a variable name is not the same as using index and 
  28.      neither of them is the same as using InDeX for a variable 
  29.      name.  All three refer to different variables.
  30.  
  31. 2.   According to the ANSI-C standard, at least 31 significant 
  32.      characters can be used and will be considered significant by 
  33.      a conforming ANSI-C compiler.  If more than 31 are used, 
  34.      they may be ignored by any given compiler.  
  35.  
  36.  
  37. WHAT ABOUT THE UNDERLINE?
  38. -----------------------------------------------------------------
  39. Even though the underline can be used as part of a variable name, 
  40. and adds greatly to the readability of the resulting code, it 
  41. seems to be used very little by experienced C programmers.  A few 
  42. underlines are used for illustration in this tutorial.  Since 
  43. most compiler writers use the underline as the first character 
  44. for variable names internal to the system, you should refrain 
  45. from using the underline to begin a variable to avoid the possi-
  46. bility of a name clash.  To get specific, identifiers with two 
  47. leading underscores are reserved for the compiler as well as 
  48. identifiers beginning with a single underscore and using an upper 
  49. case alphabetic character for the second.  If you make it a point 
  50. of style to never use an identifier with a leading underline, you 
  51. will never have a naming clash with the system.
  52.  
  53. It adds greatly to the readability of a program to use descrip-
  54. tive names for variables and it would be to your advantage to do 
  55.  
  56.  
  57.                                                          Page 1-1
  58.  
  59.                                       Chapter 1 - Getting Started
  60.  
  61. so.  Pascal programmers tend to use long descriptive names, but 
  62. most C programmers tend to use short cryptic names.  Most of the 
  63. example programs in this tutorial use very short names for that 
  64. reason, but a few longer names are used for illustrative purposes.
  65.  
  66.  
  67. KEYWORDS
  68. -----------------------------------------------------------------
  69. There are 32 words defined as keywords in C.  These have prede-
  70. fined uses and cannot be used for any other purpose in a C 
  71. program.  They are used by the compiler as an aid to compiling 
  72. the program.  They are always written in lower case.  A complete 
  73. list follows;
  74.  
  75.      auto          double        int           struct
  76.      break         else          long          switch
  77.      case          enum          register      typedef
  78.      char          extern        return        union
  79.      const         float         short         unsigned
  80.      continue      for           signed        void
  81.      default       goto          sizeof        volatile
  82.      do            if            static        while
  83.  
  84. In addition to this list of keywords, your compiler may define a 
  85. few more.  If it does, they will be listed in the documentation 
  86. that came with your compiler.  Each of the above keywords will be 
  87. defined, illustrated, and used in this tutorial. 
  88.  
  89.  
  90. WE NEED DATA AND A PROGRAM
  91. -----------------------------------------------------------------
  92. Any computer program has two entities to consider, the data, and 
  93. the program.  They are highly dependent on one another and care-
  94. ful planning of both will lead to a well planned and well written 
  95. program.  Unfortunately, it is not possible to study either 
  96. completely without a good working knowledge of the other.  For 
  97. that reason, this tutorial will jump back and forth between 
  98. teaching methods of program writing and methods of data 
  99. definition.   Simply follow along and you will have a good under-
  100. standing of both.  Keep in mind that, even though it seems 
  101. expedient to sometimes jump right into coding the program, time 
  102. spent planning the data structures will be well spent and the 
  103. quality of the final program will reflect the original planning.
  104.  
  105.  
  106. HOW THIS TUTORIAL IS WRITTEN
  107. -----------------------------------------------------------------
  108. As you go through the example programs, you will find that every 
  109. program is complete.  There are no program fragments that could 
  110. be confusing.  This allows you to see every requirement that is 
  111. needed to use any of the features of C as they are presented.  
  112. Some tutorials I have seen give very few, and very complex 
  113. examples.  They really serve more to confuse the student.  This 
  114.  
  115.                                                          Page 1-2
  116.  
  117.                                       Chapter 1 - Getting Started
  118.  
  119. tutorial is the complete opposite because it strives to cover 
  120. each new aspect of programming in as simple a context as possible.  
  121. This method, however, leads to a lack of knowledge in how the 
  122. various parts are combined.  For that reason, the last chapter is 
  123. devoted entirely to using the features taught in the earlier 
  124. chapters.  It will illustrate how to put the various features 
  125. together to create a usable program.  They are given for your 
  126. study, and are not completely explained.  Enough details of their 
  127. operation are given to allow you to understand how they work 
  128. after you have completed all of the previous lessons.
  129.  
  130. Throughout this tutorial, keywords, variable names, and function 
  131. names will be given in boldface as an aid to the student.  These 
  132. terms will be completely defined throughout the tutorial.
  133.  
  134.  
  135. RESULT OF EXECUTION
  136. -----------------------------------------------------------------
  137. The result of executing each program will be given in comments at 
  138. the end of the program listing, after the comment is defined in 
  139. about the fourth program of chapter 2.  If you feel confident 
  140. that you completely understand the program, you can simply refer 
  141. to the result of execution to see if you understand the result.  
  142. In this case, it will not be necessary for you to compile and 
  143. execute every program.  It would be a good exercise for you to 
  144. compile and execute some of them however, because all C compilers 
  145. will not generate exactly the same results and you need to get 
  146. familiar with your own compiler.
  147.  
  148. At this point, you should load and run          =================
  149. FIRSTEX.C if you have not yet done so, to           FIRSTEX.C
  150. see that your C compiler is properly loaded     =================
  151. and operating.  Don't worry about what the 
  152. program does yet.  In due time you will understand it completely.
  153.  
  154. Note that this program may give you a warning that printf() is 
  155. undefined.  Whether or not you get the warning depends on your 
  156. compiler and how it is set up.  At this point, you can completely 
  157. ignore this warning.  We will cover the reason for the warning 
  158. later in this tutorial.
  159.  
  160.  
  161. A WORD ABOUT COMPILERS
  162. -----------------------------------------------------------------
  163. All of the example programs in this tutorial will compile and 
  164. execute correctly with any good ANSI compatible C compiler.  Some 
  165. compilers have gotten extremely complex and hard to use for a 
  166. beginning C programmer, and some only compile and build MS 
  167. Windows programs.  Fortunately, most of the C compilers available 
  168. have a means of compiling a standard C program which is written 
  169. for the DOS environment.  You should check your documentation for 
  170. the capabilities and limitations of your compiler.  If you have 
  171.  
  172.  
  173.                                                          Page 1-3
  174.  
  175.                                       Chapter 1 - Getting Started
  176.  
  177. not yet purchased a C compiler, you should find one that is 
  178. ANSI-C compliant, and that generates a DOS executable.
  179.  
  180.  
  181. A DISCUSSION OF SOME OF THE FILES
  182. -----------------------------------------------------------------
  183. LIST.EXE
  184.  
  185. This file will list the source files on your printer for 
  186. you with the filename and line numbers.  To use it, simply type 
  187. LIST followed by the appropriate filename.  At the user prompt, 
  188. enter the command LIST FIRSTEX.C now for an example.  C source 
  189. code is given in Chapter 14 for this program along with a brief 
  190. description of its operation.  After you have completed your 
  191. study of C, you will have the ability to read and understand the 
  192. source code for this program.
  193.  
  194.  
  195. PRINTALL.BAT
  196.  
  197. This is a batch file that will call the above LIST.EXE file once 
  198. for each of the example C programs, printing all of the files out.  
  199. If you want a hardcopy of all of the files, enter the command 
  200. PRINTALL at the user prompt and watch as your printer fills about 
  201. 100 sheets of paper with C programs. 
  202.  
  203.  
  204. THE \ANSWERS DIRECTORY
  205. -----------------------------------------------------------------
  206. There is a directory on the distribution disk named ANSWERS which 
  207. contains an answer to each of the programming exercises given at 
  208. the end of the chapters.  You should attempt to do original work 
  209. on each of the exercises before referring to these answers in 
  210. order to gain your own programming experience.  These answers are 
  211. given for your information in case you are completely stuck on 
  212. how to solve a particular problem.  These answers are not meant 
  213. to be the only answer, since there are many ways to program 
  214. anything, but they are meant to illustrate one way to solve the 
  215. suggested programming problem.
  216.  
  217. The answers are all in executable files named in the format 
  218. CHnn_m.C where nn is the chapter number, and m is the exercise 
  219. number.  If more than one answer is required, an A, B, or C is 
  220. included following the exercise number.
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.                                                          Page 1-4
  232.